package comunicacao;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.ArrayList;

/**
 * Interface de um redirecionador de pedidos. Usada 
 * pelo primario das bases de dados
 * 
 * @author Leonardo Lino Nº45340
 * @author Diogo Pires Nº40351
 */
public interface MessageRedirectorInterface extends Remote {

	//Indica qual o servidor responsável por determinado teatro
	// no formato address:port:bindingName
	public String getResponsible(String theaterName) throws RemoteException;
	
	//Retorna uma lista com todos os nomes dos teatros
	public String listTheaters() throws RemoteException;
	
	// metodo para deitar abaixo o servidor
	public boolean falha(boolean failureMode, boolean force) throws RemoteException;

	// metodo para recomeçar o servidor
	public boolean restart() throws RemoteException;
}
